﻿using System;
//6.1 字符串与文本处理
//6.1.1 字符（char）
//一个C#的char表示一个Unicode字符，它是System.Char结构体的别名。

namespace _153_字符串与文本处理_字符char
{
    class Program
    {
        static void Main(string[] args)
        {
            //我们介绍了如何表示char字面值。例如：
            char c = 'A';
            char newLine = '\n';
            //System.Char定义了许多处理字符的静态方法，如ToUpper、ToLower和IsWhiteSpace。可以通过System.Char类型或它的别名char调用这些方法：
            Console.WriteLine(System.Char.ToUpper('c')); // C
            Console.WriteLine(char.IsWhiteSpace('\t')); // True
            //ToUpper和ToLower会受到最终用户的语言环境的影响，这可能会导致出现细微的缺陷。
            //下面的表达式在土耳其语言环境中会得到false值：
            // char.ToUpper('i') == 'I'
            //因为在土耳其语中，char.ToUpper('i')的结果是“”（注意字符上面的点）。为了避免出现这个问题，System.Char，System.String还提供了针对语言变化的ToUpper和ToLower，它们加上后缀Invariant。这些命名总是采用英语语言规则：
            Console.WriteLine(char.ToUpperInvariant('i')); // I
            //快捷形式是：
            //Console.WriteLine(char.ToUpper('i',CultureInfo.InvariantCulture));
            
            Console.ReadKey();
        }
    }
}
